/**
 * 发布供应报盘js
 * @author ghn-20151025
 * @author modify-gonglong
 */
$(function () {
    // 渲染页面-通用部分；
    commTemplUtil.initPage();
    // 渲染左侧菜单;
    commTemplUtil.initCommLeftMemu();

    //初始化采购商信息
    iniClassifyData();

    $("#submit-btn").on("click", subGrant);
    // 返回
    $("#back-btn").attr("href", PAGE_DATA.backHref || '');
    // 返回采购商列表
    $("#back-buyer-list").attr("href", PAGE_DATA.backBuyerListHref || '');
});

//初始化采购商信息
function iniClassifyData() {

    // 采购商名称
    $("#buyerName").html(PAGE_DATA.buyerName || "");
    $("#buyerId").val(PAGE_DATA.buyerId || "");
    // 选择授权商品
    $("#goodId").val(PAGE_DATA.goodId || "");
    $("#goodName").html(PAGE_DATA.goodName || "");

    var areaTemplObj = _.template($('#area-option-templ').html());

    // 渲染 "选择授权价格",
    var priceTemplObj = _.template($('#price-templ').html());
    var priceData = $.extend([], PAGE_DATA.pricePolicy);
    var priceHtml = priceTemplObj(priceData);
    $("#price").html(priceHtml);

    // 设置 "选择授权价格" 默认值.
    $("#price").val(PAGE_DATA.priceid || '');

    // 渲染省
    $.ajax({
        url : PAGE_CONFIG.requestUrl.addrProvince,
        type : 'get',
        dataType : 'json',
        success : function (result) {
            var datas = $.extend([], result.data);
            var tmplObjHtml = areaTemplObj(datas);
            $("#province").html(tmplObjHtml);

            // 设置 "省份"默认值;
            $("#province").val(PAGE_DATA.provinceid || '').trigger("change");
        },
        error : function (xhr, status, error) {

            var tmplObjHtml = areaTemplObj([]);
            $("#province").html(tmplObjHtml);
        }
    });
    
    $("#city").attr("def-id", PAGE_DATA.cityid);
    $("#country").attr("def-id", PAGE_DATA.countryid);

    $("#province").on("change", function () {
        var code = $(this).val();
        renderAddrCity(code);
    });
    
    $("#city").on("change", function () {
        var code = $(this).val();
        renderAddrCounty(code);
    });

};

//市
function renderAddrCity(provinceCode) {
    var areaTemplObj = _.template($('#area-option-templ').html());

    // 市
    $.ajax({
        url : PAGE_CONFIG.requestUrl.addrCity,
        type : 'post',
        dataType : 'json',
        data : {
            code : provinceCode,
            _token : COMM_DATA.csrfToken
        },
        success : function (result) {
            var datas = $.extend([], result.data);
            var tmplObjHtml = areaTemplObj(datas);
            $("#city").html(tmplObjHtml);
            
            var defaultVal = $("#city").attr("def-id") || "";
            if(defaultVal != ""){
                $("#city").removeAttr("def-id").val(defaultVal).trigger("change");
            }

        },
        error : function (xhr, status, error) {
            var tmplObjHtml = areaTemplObj([]);
            $("#city").html(tmplObjHtml);
        }
    });

    $("#city").empty().html(areaTemplObj([]));
    $("#country").empty().html(areaTemplObj([]));
};

//区/县
function renderAddrCounty(cityCode) {

    var areaTemplObj = _.template($('#area-option-templ').html());

    // 区/县
    $.ajax({
        url : PAGE_CONFIG.requestUrl.addrCounty,
        type : 'post',
        dataType : 'json',
        data : {
            code : cityCode,
            _token : COMM_DATA.csrfToken
        },
        success : function (result) {
            var datas = $.extend([], result.data);
            var tmplObjHtml = areaTemplObj(datas);
            $("#country").html(tmplObjHtml);
            
            var defaultVal = $("#country").attr("def-id") || "";
            if(defaultVal != ""){
                $("#country").removeAttr("def-id").val(defaultVal);
            }

        },
        error : function (xhr, status, error) {
            var tmplObjHtml = areaTemplObj([]);
            $("#country").html(tmplObjHtml);
        }
    });
};

//授权修改提交
function subGrant() {
    //判断是否选择价格策略
    if ($("#price").val() == '') {
        var conf = {
            title : "注意",
            message : "请选择价格策略!",
            ok_txt : "确定"
        };
        commTemplUtil.showErrorDialog(conf);
        return false;
    }
    //判断是否选择地区
    if ($("#province").val() == '' || $("#city").val() == '' || $("#country").val() == '') {
        var conf = {
            title : "注意",
            message : "请选择地区!",
            ok_txt : "确定"
        };
        commTemplUtil.showErrorDialog(conf);
        return false;
    }

    $("#page-main-form").submit();

};